Various electro-optical systems have been developed for reading optical indicia, such as bar codes. A bar code is a coded pattern of graphical indicia comprised of a series of bars and spaces of varying widths, the bars and spaces having differing light reflecting characteristics. Some of the more popular bar code symbologies include: Uniform Product Code (UPC), typically used in retail stores sales; Code 39, primarily used in inventory tracking; and Postnet, which is used for encoding zip codes for U.S. mail. Bar codes may be one dimensional (1D), i.e., a single row of graphical indicia such as a UPC bar code or two dimensional (2D), i.e., multiple rows of graphical indicia comprising a single bar code, such as a PDF417 and DataMatrix bar codes.
Systems that read bar codes (bar code readers) electro-optically transform the graphic indicia into electrical signals, which are decoded into alphanumerical characters that are intended to be descriptive of the article or some characteristic thereof. The characters are then typically represented in digital form and utilized as an input to a data processing system for various end-user applications such as point-of-sale processing, inventory control and the like.
Bar code readers that read and decode bar codes employing imaging systems are typically referred to as imaging-based bar code readers or bar code scanners. Imaging systems include sensor arrays such as charge coupled device (CCD) arrays, complementary metal oxide semiconductor (CMOS) arrays, or other imaging pixel arrays having a plurality of photosensitive elements (photosensors or pixels). An illumination apparatus or system comprising light emitting diodes (LEDs) or other light source directs illumination toward a target object, e.g., a target bar code. Light reflected from the target bar code is focused through a system of one or more lens of the imaging system onto the sensor array. Thus, the target bar code within a field of view (FV) of the imaging lens system is focused on the sensor array. Typically, for imaging 2D bar codes, two dimensional (2D) sensor arrays are utilized wherein a light receiving surface of the sensor array comprise multiple rows of light receiving photosensitive pixels.
Bar code readers typically utilize electronic shutters to determine exposure time of the pixels of the sensor array. An electronic shutter means that no physical shutters are activated, rather exposure durations for pixel rows of the sensor array are all controlled by electronically activating and deactivating the pixels of the sensor array. Two types of electronic shutter modes of operation are typically employed with two dimensional (2D) sensor arrays: rolling shutter and global shutter. In a traditional rolling shutter mode of operation, all rows of pixels in the sensor array are exposed at different times. This is shown schematically in prior art FIG. 6 where pixel rows R1, R2, R3, . . . , Rn are exposed for respective exposure times E1, E2, E3, . . . , En. As can be seen, the row exposure times E1, E2, . . . , En are sequential, that is, the exposure times of adjacent rows, e.g., E1 and E2 for rows R1 and R2, are staggered. While the exposure times of adjacent rows may overlap, the commencement of the exposure time for each row is offset and sequentially later than the commencement of the exposure time for the preceding row. Readout of a row commences after completion of the exposure time for the row. This is shown as O1 for readout of row R1, O2 for readout of row R2, etc., in FIG. 6.
In traditional rolling shutter, if active illumination or flash is used (emitted by an illumination system of the reader), the flash must be long enough in duration to cover the combined exposure period of all the pixel rows. This active illumination or pulse/flash is shown as FD in FIG. 6. The rolling shutter mode of operation is easy and inexpensive to implement required only three transistors at the pixel level. Additionally, rolling shutter has been found to provide good signal-to-noise ratio and is more tolerant of imaging lens systems utilizing wide aperture lenses.
In a global shutter mode of operation, all pixel rows have a common, simultaneous exposure time. This is shown schematically in prior art FIG. 7 where pixel rows R1, R2, R3, . . . , Rn are exposed for respective exposure times E1, E2, E3, . . . , En. As can be seen, the row exposure times E1, E2, . . . , En overlap or are congruent, that is, the exposure times for each row occur at the same time. At the end of exposure time, pixel content is stored in a respective memory beside each pixel, or in a dedicated frame storage area, and then readout commences on a row by row basis. This readout is schematically shown as O1, O2, O3, . . . , On in FIG. 7. In a global shutter mode of operation, because all pixel rows have a common, simultaneous exposure time, a short duration pulse or flash (shown as FD) may be used to illuminate the target bar code.
Because global shutter requires a memory for each pixel of the sensor array, additional electronics in the form of at least one additional transistor for each pixel are required for a sensor array configured to operate in global shutter mode as compared to rolling shutter mode. Additionally, the global shutter memory must be non-sensitive meaning no light leakage is permitted. Thus, while global shutter has certain advantages over the rolling shutter mode of operation in terms of short flash duration, global shutter is more costly and difficult to implement. Moreover, in many sensor arrays, global shutter is not supported.
A discussion and comparison of global and rolling shutter readout structures may be found in an article entitled “Areascan Cameras: How to Choose Between Global and Rolling Shutter” by Jacques Leconte, Camera & Application Development Manager, Atmel, appearing in Atmel Applications Journal, Issue 6, Winter 2006, pages 37-39, Atmel Corporation, San Jose, Calif. 95131 (www.atmel.com). The aforesaid Atmel Applications Journal article is incorporated herein in its entirety by reference.
What is needed is a bar code reader having an imaging system utilizing a sensor array that is configured to operating in a rolling shutter mode of electronic shutter operation that can select, depending on ambient lighting conditions, between utilizing: a) a rolling shutter mode of operation taking advantage of good signal-to-noise ratio inherent in rolling shutter operation and b) a pseudo-global shutter method of operation that has the advantage of providing a short flash duration.